<?php
 /**
  * Clase BD
  * Requiere LIGA 2 o superior
  * Autor: Ing. Oscar Galileo García García
  * Creación: 2 de Abril del 2011
  * Última modificación: 4 de Marzo del 2012
  *
  * Se implementó el patrón de diseño Fábrica (Factory)
  * 
  */
 class BD {
    private function __construct() {
        // Indispensable para el patrón usado
    }
    public static function conectar($motor='mysql',$s='127.0.0.1',$u='root',$p='',$b='') {
        $obj;
        if(!empty($motor)) {
            $motor = strtolower($motor);
            switch ($motor) {
                case 'mysql':
                    $obj = new MySQL($s,$u,$p,$b);
                break;
                case 'mysql2':
                    $obj = new MySQL2($s,$u,$p,$b);
                break;
                case 'oracle':
                    $obj = new Oracle($s,$u,$p,$b);
                break;
                case 'mssql':
                    $obj = new MSSQL($s,$u,$p,$b);
                break;
                case 'postgresql':
                    $obj = new PostgreSQL($s,$u,$p,$b);
                break;
                default:
                    throw new Error("No proporcionó un nombre de base de datos válido");
            }
        }
        return $obj;
    }
 }
?>